package com.travel.entity.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
@TableName("user")
@ApiModel(value = "用户实体", description = "用户数据表映射实体")
public class User {

    @TableId(type = IdType.AUTO)
    @ApiModelProperty("用户ID")
    private Long id;
    
    @ApiModelProperty("用户名")
    private String username;
    
    @ApiModelProperty("密码(加密存储)")
    private String password;
    
    @ApiModelProperty("邮箱")
    private String email;
    
    @ApiModelProperty("名")
    private String firstName;
    
    @ApiModelProperty("姓")
    private String lastName;
    
    @ApiModelProperty("国籍")
    private String nationality;
    
    @ApiModelProperty("偏好语言")
    private String preferredLanguage;
    
    @ApiModelProperty("联系电话")
    private String phone;
    
    @ApiModelProperty("性别")
    private String gender;
    
    @ApiModelProperty("出生日期")
    private Date birthDate;
    
    @ApiModelProperty("头像URL")
    private String avatarUrl;
    
    @ApiModelProperty("注册时间")
    private Date registrationDate;
    
    @ApiModelProperty("最后登录时间")
    private Date lastLogin;
    
    @ApiModelProperty("用户状态：0-管理员，1-正常用户，2-禁用用户")
    private Integer userStatus;

}
